home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FishMarket 1.0
/
FishMarket v1.0.iso
/
fishies
/
476-500
/
disk_500
/
swindows
/
source
/
swsetup.c
< prev
next >
Wrap
C/C++ Source or Header
|
1992-05-06
|
2KB
|
78 lines
/*
* SWINDOWS A program to allow you to open windows on any screen by
* supplying the screen name in thw window title
*
* Copyright 1989 by Davide P. Cervone.
* You may use this code, provided this copywrite notice is kept intact.
*/
#include "swHandler.h"
struct IntuitionBase *IntuitionBase = NULL;
struct SysBase *SysBase;
/*
* These are the assembly code stubs that replace the Intuition Library
* vectors. Thes stubs in turn call the C-language routines that actually
* do the work.
*/
extern void aOpenWindow();
extern void aCloseWindow();
extern void aCloseScreen();
/*
* These are used by the assembly stubs to call the original routines when
* needed. They also are used to replace the Intution vectors when
* sWindows exits.
*/
long OldOpenWindow;
long OldCloseWindow;
long OldCloseScreen;
static struct swHandlerInfo swHandlerData =
{
{ /* the MsgPort is pre-setup */
{NULL,NULL, NT_MSGPORT, 0, PORTNAME}, /* to include the name and */
PA_IGNORE, 0, NULL, /* type so that it can just */
{NULL,NULL,NULL, 0,0} /* be added to the port list */
}, /* so it can be founf later */
MAJVERS,MINVERS, 0,
NULL,
&IntuitionBase,
&SysBase,
&ScreenList,
&WindowList,
&aOpenWindow,
&aCloseWindow,
&aCloseScreen,
&OldOpenWindow,
&OldCloseWindow,
&OldCloseScreen,
};
/*
* Setup()
*
* This routine MUST be linked into the sWindows-Handler executable
* as the first routine, so that the loader can find it.
* It should check the version number for compatibility with the loader,
* and should return NULL for an error, or the pointer to the shared
* data structure if everything is OK.
*/
struct swHandlerInfo *Setup(version)
int version;
{
if (version < MINLOADVER) return(NULL);
return(&swHandlerData);
}